package com.detech.sbom.base.annotation;

import com.detech.sbom.base.enumtype.LogTypeEnum;
import com.detech.sbom.base.enumtype.ModuleEnum;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 系统日志注解
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Log {

    String value() default "";

    //需要显示在日志中的参数值（多个参数用英文逗号分隔，支持实体写法）
    String showParam() default "";

    //日志是否保存到数据库
    boolean saveDB() default false;

    //功能模块名称
    ModuleEnum model();

    //日志类型
    LogTypeEnum logType() default LogTypeEnum.INFO;
}
